package br.com.ffm.praticas.projeto;

import java.util.ArrayList;
import java.util.List;


public class Mensagem {
	
	private String emailRemetente;
	private String emailDestinatario;
	private String assunto;
	private String corpo;
	private List<Mensagem> subMensagens;
	
	public Mensagem (String remetente, String destinatario, String assunto, String corpo) {
		this.emailRemetente = remetente;
		this.emailDestinatario = destinatario;
		this.assunto = assunto;
		this.corpo = corpo;
		this.subMensagens = new ArrayList<Mensagem>();
	}
	
	public String getEmailRemetente() {
		return this.emailRemetente;
	}
	
	public String getEmailDestinatario() {
		return this.emailDestinatario;
	}
	
	public String getAssunto() {
		return this.assunto;
	}
	
	public String getCorpo() {
		return this.corpo;
	}
	
	public void setRemetente(String srt){
		this.emailRemetente = srt;
	}
	
	public void setDestinatario(String srt){
		this.emailDestinatario = srt;
	}
	
	public void setCorpo(String srt){
		this.corpo = srt;
	}
	
	public void addSubmensagem(Mensagem msg){
		this.subMensagens.add(msg);
	}
	
	public String toString() {
		StringBuffer sb = new StringBuffer();
		
		sb.append("DE: "); 
		sb.append(this.emailRemetente); 
		sb.append("\n"); 
		sb.append("PARA: "); 
		sb.append(this.emailDestinatario); 
		sb.append("\n");
		sb.append("ASSUNTO: "); 
		sb.append(this.assunto); 
		sb.append("\n");
		sb.append("CORPO: "); 
		sb.append(this.corpo);
		sb.append("\n");
		
		for (Mensagem mensagem : this.subMensagens) {
			sb.append("---------------------------\n");
			sb.append("DE: "); 
			sb.append(mensagem.emailRemetente); 
			sb.append("\n"); 
			sb.append("PARA: "); 
			sb.append(mensagem.emailDestinatario); 
			sb.append("\n");
			sb.append("ASSUNTO: "); 
			sb.append(mensagem.assunto); 
			sb.append("\n");
			sb.append("CORPO: "); 
			sb.append(mensagem.corpo);
			sb.append("\n");
		}
		return sb.toString();
	}

}
